// Copyright 2016 Proyectos y Sistemas de Mantenimiento SL (eProsima).
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
//     http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.

/*!
 * @file telemetry_status.cpp
 * This source file contains the definition of the described types in the IDL file.
 *
 * This file was generated by the tool gen.
 */

#ifdef _WIN32
// Remove linker warning LNK4221 on Visual Studio
namespace { char dummy; }
#endif

#include "telemetry_status.h"
#include <fastcdr/Cdr.h>

#include <fastcdr/exceptions/BadParamException.h>
using namespace eprosima::fastcdr::exception;

#include <utility>







telemetry_status::telemetry_status()
{
    // m_timestamp_ com.eprosima.idl.parser.typecode.PrimitiveTypeCode@71d44a3
    m_timestamp_ = 0;
    // m_type_ com.eprosima.idl.parser.typecode.PrimitiveTypeCode@7b98f307
    m_type_ = 0;
    // m_mode_ com.eprosima.idl.parser.typecode.PrimitiveTypeCode@4802796d
    m_mode_ = 0;
    // m_flow_control_ com.eprosima.idl.parser.typecode.PrimitiveTypeCode@34123d65
    m_flow_control_ = false;
    // m_forwarding_ com.eprosima.idl.parser.typecode.PrimitiveTypeCode@59474f18
    m_forwarding_ = false;
    // m_mavlink_v2_ com.eprosima.idl.parser.typecode.PrimitiveTypeCode@65fb9ffc
    m_mavlink_v2_ = false;
    // m_ftp_ com.eprosima.idl.parser.typecode.PrimitiveTypeCode@3e694b3f
    m_ftp_ = false;
    // m_streams_ com.eprosima.idl.parser.typecode.PrimitiveTypeCode@1bb5a082
    m_streams_ = 0;
    // m_data_rate_ com.eprosima.idl.parser.typecode.PrimitiveTypeCode@78691363
    m_data_rate_ = 0.0;
    // m_rate_multiplier_ com.eprosima.idl.parser.typecode.PrimitiveTypeCode@41d477ed
    m_rate_multiplier_ = 0.0;
    // m_tx_rate_avg_ com.eprosima.idl.parser.typecode.PrimitiveTypeCode@3590fc5b
    m_tx_rate_avg_ = 0.0;
    // m_tx_error_rate_avg_ com.eprosima.idl.parser.typecode.PrimitiveTypeCode@397fbdb
    m_tx_error_rate_avg_ = 0.0;
    // m_tx_message_count_ com.eprosima.idl.parser.typecode.PrimitiveTypeCode@33d512c1
    m_tx_message_count_ = 0;
    // m_tx_buffer_overruns_ com.eprosima.idl.parser.typecode.PrimitiveTypeCode@515c6049
    m_tx_buffer_overruns_ = 0;
    // m_rx_rate_avg_ com.eprosima.idl.parser.typecode.PrimitiveTypeCode@639c2c1d
    m_rx_rate_avg_ = 0.0;
    // m_rx_message_count_ com.eprosima.idl.parser.typecode.PrimitiveTypeCode@5fe94a96
    m_rx_message_count_ = 0;
    // m_rx_message_lost_count_ com.eprosima.idl.parser.typecode.PrimitiveTypeCode@443118b0
    m_rx_message_lost_count_ = 0;
    // m_rx_buffer_overruns_ com.eprosima.idl.parser.typecode.PrimitiveTypeCode@765d7657
    m_rx_buffer_overruns_ = 0;
    // m_rx_parse_errors_ com.eprosima.idl.parser.typecode.PrimitiveTypeCode@74235045
    m_rx_parse_errors_ = 0;
    // m_rx_packet_drop_count_ com.eprosima.idl.parser.typecode.PrimitiveTypeCode@618b19ad
    m_rx_packet_drop_count_ = 0;
    // m_rx_message_lost_rate_ com.eprosima.idl.parser.typecode.PrimitiveTypeCode@2d3379b4
    m_rx_message_lost_rate_ = 0.0;
    // m_heartbeat_type_antenna_tracker_ com.eprosima.idl.parser.typecode.PrimitiveTypeCode@30c15d8b
    m_heartbeat_type_antenna_tracker_ = false;
    // m_heartbeat_type_gcs_ com.eprosima.idl.parser.typecode.PrimitiveTypeCode@5e0e82ae
    m_heartbeat_type_gcs_ = false;
    // m_heartbeat_type_onboard_controller_ com.eprosima.idl.parser.typecode.PrimitiveTypeCode@6771beb3
    m_heartbeat_type_onboard_controller_ = false;
    // m_heartbeat_type_gimbal_ com.eprosima.idl.parser.typecode.PrimitiveTypeCode@51399530
    m_heartbeat_type_gimbal_ = false;
    // m_heartbeat_type_adsb_ com.eprosima.idl.parser.typecode.PrimitiveTypeCode@6b2ea799
    m_heartbeat_type_adsb_ = false;
    // m_heartbeat_type_camera_ com.eprosima.idl.parser.typecode.PrimitiveTypeCode@411f53a0
    m_heartbeat_type_camera_ = false;
    // m_heartbeat_component_telemetry_radio_ com.eprosima.idl.parser.typecode.PrimitiveTypeCode@2b71e916
    m_heartbeat_component_telemetry_radio_ = false;
    // m_heartbeat_component_log_ com.eprosima.idl.parser.typecode.PrimitiveTypeCode@36fc695d
    m_heartbeat_component_log_ = false;
    // m_heartbeat_component_osd_ com.eprosima.idl.parser.typecode.PrimitiveTypeCode@28701274
    m_heartbeat_component_osd_ = false;
    // m_heartbeat_component_obstacle_avoidance_ com.eprosima.idl.parser.typecode.PrimitiveTypeCode@13c9d689
    m_heartbeat_component_obstacle_avoidance_ = false;
    // m_heartbeat_component_vio_ com.eprosima.idl.parser.typecode.PrimitiveTypeCode@3754a4bf
    m_heartbeat_component_vio_ = false;
    // m_heartbeat_component_pairing_manager_ com.eprosima.idl.parser.typecode.PrimitiveTypeCode@62379589
    m_heartbeat_component_pairing_manager_ = false;
    // m_heartbeat_component_udp_bridge_ com.eprosima.idl.parser.typecode.PrimitiveTypeCode@4afcd809
    m_heartbeat_component_udp_bridge_ = false;
    // m_heartbeat_component_uart_bridge_ com.eprosima.idl.parser.typecode.PrimitiveTypeCode@175c2241
    m_heartbeat_component_uart_bridge_ = false;
    // m_avoidance_system_healthy_ com.eprosima.idl.parser.typecode.PrimitiveTypeCode@5bf0d49
    m_avoidance_system_healthy_ = false;

}

telemetry_status::~telemetry_status()
{




































}

telemetry_status::telemetry_status(const telemetry_status &x)
{
    m_timestamp_ = x.m_timestamp_;
    m_type_ = x.m_type_;
    m_mode_ = x.m_mode_;
    m_flow_control_ = x.m_flow_control_;
    m_forwarding_ = x.m_forwarding_;
    m_mavlink_v2_ = x.m_mavlink_v2_;
    m_ftp_ = x.m_ftp_;
    m_streams_ = x.m_streams_;
    m_data_rate_ = x.m_data_rate_;
    m_rate_multiplier_ = x.m_rate_multiplier_;
    m_tx_rate_avg_ = x.m_tx_rate_avg_;
    m_tx_error_rate_avg_ = x.m_tx_error_rate_avg_;
    m_tx_message_count_ = x.m_tx_message_count_;
    m_tx_buffer_overruns_ = x.m_tx_buffer_overruns_;
    m_rx_rate_avg_ = x.m_rx_rate_avg_;
    m_rx_message_count_ = x.m_rx_message_count_;
    m_rx_message_lost_count_ = x.m_rx_message_lost_count_;
    m_rx_buffer_overruns_ = x.m_rx_buffer_overruns_;
    m_rx_parse_errors_ = x.m_rx_parse_errors_;
    m_rx_packet_drop_count_ = x.m_rx_packet_drop_count_;
    m_rx_message_lost_rate_ = x.m_rx_message_lost_rate_;
    m_heartbeat_type_antenna_tracker_ = x.m_heartbeat_type_antenna_tracker_;
    m_heartbeat_type_gcs_ = x.m_heartbeat_type_gcs_;
    m_heartbeat_type_onboard_controller_ = x.m_heartbeat_type_onboard_controller_;
    m_heartbeat_type_gimbal_ = x.m_heartbeat_type_gimbal_;
    m_heartbeat_type_adsb_ = x.m_heartbeat_type_adsb_;
    m_heartbeat_type_camera_ = x.m_heartbeat_type_camera_;
    m_heartbeat_component_telemetry_radio_ = x.m_heartbeat_component_telemetry_radio_;
    m_heartbeat_component_log_ = x.m_heartbeat_component_log_;
    m_heartbeat_component_osd_ = x.m_heartbeat_component_osd_;
    m_heartbeat_component_obstacle_avoidance_ = x.m_heartbeat_component_obstacle_avoidance_;
    m_heartbeat_component_vio_ = x.m_heartbeat_component_vio_;
    m_heartbeat_component_pairing_manager_ = x.m_heartbeat_component_pairing_manager_;
    m_heartbeat_component_udp_bridge_ = x.m_heartbeat_component_udp_bridge_;
    m_heartbeat_component_uart_bridge_ = x.m_heartbeat_component_uart_bridge_;
    m_avoidance_system_healthy_ = x.m_avoidance_system_healthy_;
}

telemetry_status::telemetry_status(telemetry_status &&x)
{
    m_timestamp_ = x.m_timestamp_;
    m_type_ = x.m_type_;
    m_mode_ = x.m_mode_;
    m_flow_control_ = x.m_flow_control_;
    m_forwarding_ = x.m_forwarding_;
    m_mavlink_v2_ = x.m_mavlink_v2_;
    m_ftp_ = x.m_ftp_;
    m_streams_ = x.m_streams_;
    m_data_rate_ = x.m_data_rate_;
    m_rate_multiplier_ = x.m_rate_multiplier_;
    m_tx_rate_avg_ = x.m_tx_rate_avg_;
    m_tx_error_rate_avg_ = x.m_tx_error_rate_avg_;
    m_tx_message_count_ = x.m_tx_message_count_;
    m_tx_buffer_overruns_ = x.m_tx_buffer_overruns_;
    m_rx_rate_avg_ = x.m_rx_rate_avg_;
    m_rx_message_count_ = x.m_rx_message_count_;
    m_rx_message_lost_count_ = x.m_rx_message_lost_count_;
    m_rx_buffer_overruns_ = x.m_rx_buffer_overruns_;
    m_rx_parse_errors_ = x.m_rx_parse_errors_;
    m_rx_packet_drop_count_ = x.m_rx_packet_drop_count_;
    m_rx_message_lost_rate_ = x.m_rx_message_lost_rate_;
    m_heartbeat_type_antenna_tracker_ = x.m_heartbeat_type_antenna_tracker_;
    m_heartbeat_type_gcs_ = x.m_heartbeat_type_gcs_;
    m_heartbeat_type_onboard_controller_ = x.m_heartbeat_type_onboard_controller_;
    m_heartbeat_type_gimbal_ = x.m_heartbeat_type_gimbal_;
    m_heartbeat_type_adsb_ = x.m_heartbeat_type_adsb_;
    m_heartbeat_type_camera_ = x.m_heartbeat_type_camera_;
    m_heartbeat_component_telemetry_radio_ = x.m_heartbeat_component_telemetry_radio_;
    m_heartbeat_component_log_ = x.m_heartbeat_component_log_;
    m_heartbeat_component_osd_ = x.m_heartbeat_component_osd_;
    m_heartbeat_component_obstacle_avoidance_ = x.m_heartbeat_component_obstacle_avoidance_;
    m_heartbeat_component_vio_ = x.m_heartbeat_component_vio_;
    m_heartbeat_component_pairing_manager_ = x.m_heartbeat_component_pairing_manager_;
    m_heartbeat_component_udp_bridge_ = x.m_heartbeat_component_udp_bridge_;
    m_heartbeat_component_uart_bridge_ = x.m_heartbeat_component_uart_bridge_;
    m_avoidance_system_healthy_ = x.m_avoidance_system_healthy_;
}

telemetry_status& telemetry_status::operator=(const telemetry_status &x)
{

    m_timestamp_ = x.m_timestamp_;
    m_type_ = x.m_type_;
    m_mode_ = x.m_mode_;
    m_flow_control_ = x.m_flow_control_;
    m_forwarding_ = x.m_forwarding_;
    m_mavlink_v2_ = x.m_mavlink_v2_;
    m_ftp_ = x.m_ftp_;
    m_streams_ = x.m_streams_;
    m_data_rate_ = x.m_data_rate_;
    m_rate_multiplier_ = x.m_rate_multiplier_;
    m_tx_rate_avg_ = x.m_tx_rate_avg_;
    m_tx_error_rate_avg_ = x.m_tx_error_rate_avg_;
    m_tx_message_count_ = x.m_tx_message_count_;
    m_tx_buffer_overruns_ = x.m_tx_buffer_overruns_;
    m_rx_rate_avg_ = x.m_rx_rate_avg_;
    m_rx_message_count_ = x.m_rx_message_count_;
    m_rx_message_lost_count_ = x.m_rx_message_lost_count_;
    m_rx_buffer_overruns_ = x.m_rx_buffer_overruns_;
    m_rx_parse_errors_ = x.m_rx_parse_errors_;
    m_rx_packet_drop_count_ = x.m_rx_packet_drop_count_;
    m_rx_message_lost_rate_ = x.m_rx_message_lost_rate_;
    m_heartbeat_type_antenna_tracker_ = x.m_heartbeat_type_antenna_tracker_;
    m_heartbeat_type_gcs_ = x.m_heartbeat_type_gcs_;
    m_heartbeat_type_onboard_controller_ = x.m_heartbeat_type_onboard_controller_;
    m_heartbeat_type_gimbal_ = x.m_heartbeat_type_gimbal_;
    m_heartbeat_type_adsb_ = x.m_heartbeat_type_adsb_;
    m_heartbeat_type_camera_ = x.m_heartbeat_type_camera_;
    m_heartbeat_component_telemetry_radio_ = x.m_heartbeat_component_telemetry_radio_;
    m_heartbeat_component_log_ = x.m_heartbeat_component_log_;
    m_heartbeat_component_osd_ = x.m_heartbeat_component_osd_;
    m_heartbeat_component_obstacle_avoidance_ = x.m_heartbeat_component_obstacle_avoidance_;
    m_heartbeat_component_vio_ = x.m_heartbeat_component_vio_;
    m_heartbeat_component_pairing_manager_ = x.m_heartbeat_component_pairing_manager_;
    m_heartbeat_component_udp_bridge_ = x.m_heartbeat_component_udp_bridge_;
    m_heartbeat_component_uart_bridge_ = x.m_heartbeat_component_uart_bridge_;
    m_avoidance_system_healthy_ = x.m_avoidance_system_healthy_;

    return *this;
}

telemetry_status& telemetry_status::operator=(telemetry_status &&x)
{

    m_timestamp_ = x.m_timestamp_;
    m_type_ = x.m_type_;
    m_mode_ = x.m_mode_;
    m_flow_control_ = x.m_flow_control_;
    m_forwarding_ = x.m_forwarding_;
    m_mavlink_v2_ = x.m_mavlink_v2_;
    m_ftp_ = x.m_ftp_;
    m_streams_ = x.m_streams_;
    m_data_rate_ = x.m_data_rate_;
    m_rate_multiplier_ = x.m_rate_multiplier_;
    m_tx_rate_avg_ = x.m_tx_rate_avg_;
    m_tx_error_rate_avg_ = x.m_tx_error_rate_avg_;
    m_tx_message_count_ = x.m_tx_message_count_;
    m_tx_buffer_overruns_ = x.m_tx_buffer_overruns_;
    m_rx_rate_avg_ = x.m_rx_rate_avg_;
    m_rx_message_count_ = x.m_rx_message_count_;
    m_rx_message_lost_count_ = x.m_rx_message_lost_count_;
    m_rx_buffer_overruns_ = x.m_rx_buffer_overruns_;
    m_rx_parse_errors_ = x.m_rx_parse_errors_;
    m_rx_packet_drop_count_ = x.m_rx_packet_drop_count_;
    m_rx_message_lost_rate_ = x.m_rx_message_lost_rate_;
    m_heartbeat_type_antenna_tracker_ = x.m_heartbeat_type_antenna_tracker_;
    m_heartbeat_type_gcs_ = x.m_heartbeat_type_gcs_;
    m_heartbeat_type_onboard_controller_ = x.m_heartbeat_type_onboard_controller_;
    m_heartbeat_type_gimbal_ = x.m_heartbeat_type_gimbal_;
    m_heartbeat_type_adsb_ = x.m_heartbeat_type_adsb_;
    m_heartbeat_type_camera_ = x.m_heartbeat_type_camera_;
    m_heartbeat_component_telemetry_radio_ = x.m_heartbeat_component_telemetry_radio_;
    m_heartbeat_component_log_ = x.m_heartbeat_component_log_;
    m_heartbeat_component_osd_ = x.m_heartbeat_component_osd_;
    m_heartbeat_component_obstacle_avoidance_ = x.m_heartbeat_component_obstacle_avoidance_;
    m_heartbeat_component_vio_ = x.m_heartbeat_component_vio_;
    m_heartbeat_component_pairing_manager_ = x.m_heartbeat_component_pairing_manager_;
    m_heartbeat_component_udp_bridge_ = x.m_heartbeat_component_udp_bridge_;
    m_heartbeat_component_uart_bridge_ = x.m_heartbeat_component_uart_bridge_;
    m_avoidance_system_healthy_ = x.m_avoidance_system_healthy_;

    return *this;
}

size_t telemetry_status::getMaxCdrSerializedSize(size_t current_alignment)
{
    size_t initial_alignment = current_alignment;


    current_alignment += 8 + eprosima::fastcdr::Cdr::alignment(current_alignment, 8);


    current_alignment += 1 + eprosima::fastcdr::Cdr::alignment(current_alignment, 1);


    current_alignment += 1 + eprosima::fastcdr::Cdr::alignment(current_alignment, 1);


    current_alignment += 1 + eprosima::fastcdr::Cdr::alignment(current_alignment, 1);


    current_alignment += 1 + eprosima::fastcdr::Cdr::alignment(current_alignment, 1);


    current_alignment += 1 + eprosima::fastcdr::Cdr::alignment(current_alignment, 1);


    current_alignment += 1 + eprosima::fastcdr::Cdr::alignment(current_alignment, 1);


    current_alignment += 1 + eprosima::fastcdr::Cdr::alignment(current_alignment, 1);


    current_alignment += 4 + eprosima::fastcdr::Cdr::alignment(current_alignment, 4);


    current_alignment += 4 + eprosima::fastcdr::Cdr::alignment(current_alignment, 4);


    current_alignment += 4 + eprosima::fastcdr::Cdr::alignment(current_alignment, 4);


    current_alignment += 4 + eprosima::fastcdr::Cdr::alignment(current_alignment, 4);


    current_alignment += 4 + eprosima::fastcdr::Cdr::alignment(current_alignment, 4);


    current_alignment += 4 + eprosima::fastcdr::Cdr::alignment(current_alignment, 4);


    current_alignment += 4 + eprosima::fastcdr::Cdr::alignment(current_alignment, 4);


    current_alignment += 4 + eprosima::fastcdr::Cdr::alignment(current_alignment, 4);


    current_alignment += 4 + eprosima::fastcdr::Cdr::alignment(current_alignment, 4);


    current_alignment += 4 + eprosima::fastcdr::Cdr::alignment(current_alignment, 4);


    current_alignment += 4 + eprosima::fastcdr::Cdr::alignment(current_alignment, 4);


    current_alignment += 4 + eprosima::fastcdr::Cdr::alignment(current_alignment, 4);


    current_alignment += 4 + eprosima::fastcdr::Cdr::alignment(current_alignment, 4);


    current_alignment += 1 + eprosima::fastcdr::Cdr::alignment(current_alignment, 1);


    current_alignment += 1 + eprosima::fastcdr::Cdr::alignment(current_alignment, 1);


    current_alignment += 1 + eprosima::fastcdr::Cdr::alignment(current_alignment, 1);


    current_alignment += 1 + eprosima::fastcdr::Cdr::alignment(current_alignment, 1);


    current_alignment += 1 + eprosima::fastcdr::Cdr::alignment(current_alignment, 1);


    current_alignment += 1 + eprosima::fastcdr::Cdr::alignment(current_alignment, 1);


    current_alignment += 1 + eprosima::fastcdr::Cdr::alignment(current_alignment, 1);


    current_alignment += 1 + eprosima::fastcdr::Cdr::alignment(current_alignment, 1);


    current_alignment += 1 + eprosima::fastcdr::Cdr::alignment(current_alignment, 1);


    current_alignment += 1 + eprosima::fastcdr::Cdr::alignment(current_alignment, 1);


    current_alignment += 1 + eprosima::fastcdr::Cdr::alignment(current_alignment, 1);


    current_alignment += 1 + eprosima::fastcdr::Cdr::alignment(current_alignment, 1);


    current_alignment += 1 + eprosima::fastcdr::Cdr::alignment(current_alignment, 1);


    current_alignment += 1 + eprosima::fastcdr::Cdr::alignment(current_alignment, 1);


    current_alignment += 1 + eprosima::fastcdr::Cdr::alignment(current_alignment, 1);



    return current_alignment - initial_alignment;
}

size_t telemetry_status::getCdrSerializedSize(const telemetry_status& data, size_t current_alignment)
{
    (void)data;
    size_t initial_alignment = current_alignment;


    current_alignment += 8 + eprosima::fastcdr::Cdr::alignment(current_alignment, 8);


    current_alignment += 1 + eprosima::fastcdr::Cdr::alignment(current_alignment, 1);


    current_alignment += 1 + eprosima::fastcdr::Cdr::alignment(current_alignment, 1);


    current_alignment += 1 + eprosima::fastcdr::Cdr::alignment(current_alignment, 1);


    current_alignment += 1 + eprosima::fastcdr::Cdr::alignment(current_alignment, 1);


    current_alignment += 1 + eprosima::fastcdr::Cdr::alignment(current_alignment, 1);


    current_alignment += 1 + eprosima::fastcdr::Cdr::alignment(current_alignment, 1);


    current_alignment += 1 + eprosima::fastcdr::Cdr::alignment(current_alignment, 1);


    current_alignment += 4 + eprosima::fastcdr::Cdr::alignment(current_alignment, 4);


    current_alignment += 4 + eprosima::fastcdr::Cdr::alignment(current_alignment, 4);


    current_alignment += 4 + eprosima::fastcdr::Cdr::alignment(current_alignment, 4);


    current_alignment += 4 + eprosima::fastcdr::Cdr::alignment(current_alignment, 4);


    current_alignment += 4 + eprosima::fastcdr::Cdr::alignment(current_alignment, 4);


    current_alignment += 4 + eprosima::fastcdr::Cdr::alignment(current_alignment, 4);


    current_alignment += 4 + eprosima::fastcdr::Cdr::alignment(current_alignment, 4);


    current_alignment += 4 + eprosima::fastcdr::Cdr::alignment(current_alignment, 4);


    current_alignment += 4 + eprosima::fastcdr::Cdr::alignment(current_alignment, 4);


    current_alignment += 4 + eprosima::fastcdr::Cdr::alignment(current_alignment, 4);


    current_alignment += 4 + eprosima::fastcdr::Cdr::alignment(current_alignment, 4);


    current_alignment += 4 + eprosima::fastcdr::Cdr::alignment(current_alignment, 4);


    current_alignment += 4 + eprosima::fastcdr::Cdr::alignment(current_alignment, 4);


    current_alignment += 1 + eprosima::fastcdr::Cdr::alignment(current_alignment, 1);


    current_alignment += 1 + eprosima::fastcdr::Cdr::alignment(current_alignment, 1);


    current_alignment += 1 + eprosima::fastcdr::Cdr::alignment(current_alignment, 1);


    current_alignment += 1 + eprosima::fastcdr::Cdr::alignment(current_alignment, 1);


    current_alignment += 1 + eprosima::fastcdr::Cdr::alignment(current_alignment, 1);


    current_alignment += 1 + eprosima::fastcdr::Cdr::alignment(current_alignment, 1);


    current_alignment += 1 + eprosima::fastcdr::Cdr::alignment(current_alignment, 1);


    current_alignment += 1 + eprosima::fastcdr::Cdr::alignment(current_alignment, 1);


    current_alignment += 1 + eprosima::fastcdr::Cdr::alignment(current_alignment, 1);


    current_alignment += 1 + eprosima::fastcdr::Cdr::alignment(current_alignment, 1);


    current_alignment += 1 + eprosima::fastcdr::Cdr::alignment(current_alignment, 1);


    current_alignment += 1 + eprosima::fastcdr::Cdr::alignment(current_alignment, 1);


    current_alignment += 1 + eprosima::fastcdr::Cdr::alignment(current_alignment, 1);


    current_alignment += 1 + eprosima::fastcdr::Cdr::alignment(current_alignment, 1);


    current_alignment += 1 + eprosima::fastcdr::Cdr::alignment(current_alignment, 1);



    return current_alignment - initial_alignment;
}

void telemetry_status::serialize(eprosima::fastcdr::Cdr &scdr) const
{

    scdr << m_timestamp_;
    scdr << m_type_;
    scdr << m_mode_;
    scdr << m_flow_control_;
    scdr << m_forwarding_;
    scdr << m_mavlink_v2_;
    scdr << m_ftp_;
    scdr << m_streams_;
    scdr << m_data_rate_;
    scdr << m_rate_multiplier_;
    scdr << m_tx_rate_avg_;
    scdr << m_tx_error_rate_avg_;
    scdr << m_tx_message_count_;
    scdr << m_tx_buffer_overruns_;
    scdr << m_rx_rate_avg_;
    scdr << m_rx_message_count_;
    scdr << m_rx_message_lost_count_;
    scdr << m_rx_buffer_overruns_;
    scdr << m_rx_parse_errors_;
    scdr << m_rx_packet_drop_count_;
    scdr << m_rx_message_lost_rate_;
    scdr << m_heartbeat_type_antenna_tracker_;
    scdr << m_heartbeat_type_gcs_;
    scdr << m_heartbeat_type_onboard_controller_;
    scdr << m_heartbeat_type_gimbal_;
    scdr << m_heartbeat_type_adsb_;
    scdr << m_heartbeat_type_camera_;
    scdr << m_heartbeat_component_telemetry_radio_;
    scdr << m_heartbeat_component_log_;
    scdr << m_heartbeat_component_osd_;
    scdr << m_heartbeat_component_obstacle_avoidance_;
    scdr << m_heartbeat_component_vio_;
    scdr << m_heartbeat_component_pairing_manager_;
    scdr << m_heartbeat_component_udp_bridge_;
    scdr << m_heartbeat_component_uart_bridge_;
    scdr << m_avoidance_system_healthy_;
}

void telemetry_status::deserialize(eprosima::fastcdr::Cdr &dcdr)
{

    dcdr >> m_timestamp_;
    dcdr >> m_type_;
    dcdr >> m_mode_;
    dcdr >> m_flow_control_;
    dcdr >> m_forwarding_;
    dcdr >> m_mavlink_v2_;
    dcdr >> m_ftp_;
    dcdr >> m_streams_;
    dcdr >> m_data_rate_;
    dcdr >> m_rate_multiplier_;
    dcdr >> m_tx_rate_avg_;
    dcdr >> m_tx_error_rate_avg_;
    dcdr >> m_tx_message_count_;
    dcdr >> m_tx_buffer_overruns_;
    dcdr >> m_rx_rate_avg_;
    dcdr >> m_rx_message_count_;
    dcdr >> m_rx_message_lost_count_;
    dcdr >> m_rx_buffer_overruns_;
    dcdr >> m_rx_parse_errors_;
    dcdr >> m_rx_packet_drop_count_;
    dcdr >> m_rx_message_lost_rate_;
    dcdr >> m_heartbeat_type_antenna_tracker_;
    dcdr >> m_heartbeat_type_gcs_;
    dcdr >> m_heartbeat_type_onboard_controller_;
    dcdr >> m_heartbeat_type_gimbal_;
    dcdr >> m_heartbeat_type_adsb_;
    dcdr >> m_heartbeat_type_camera_;
    dcdr >> m_heartbeat_component_telemetry_radio_;
    dcdr >> m_heartbeat_component_log_;
    dcdr >> m_heartbeat_component_osd_;
    dcdr >> m_heartbeat_component_obstacle_avoidance_;
    dcdr >> m_heartbeat_component_vio_;
    dcdr >> m_heartbeat_component_pairing_manager_;
    dcdr >> m_heartbeat_component_udp_bridge_;
    dcdr >> m_heartbeat_component_uart_bridge_;
    dcdr >> m_avoidance_system_healthy_;
}

/*!
 * @brief This function sets a value in member timestamp_
 * @param _timestamp_ New value for member timestamp_
 */
void telemetry_status::timestamp_(uint64_t _timestamp_)
{
m_timestamp_ = _timestamp_;
}

/*!
 * @brief This function returns the value of member timestamp_
 * @return Value of member timestamp_
 */
uint64_t telemetry_status::timestamp_() const
{
    return m_timestamp_;
}

/*!
 * @brief This function returns a reference to member timestamp_
 * @return Reference to member timestamp_
 */
uint64_t& telemetry_status::timestamp_()
{
    return m_timestamp_;
}

/*!
 * @brief This function sets a value in member type_
 * @param _type_ New value for member type_
 */
void telemetry_status::type_(uint8_t _type_)
{
m_type_ = _type_;
}

/*!
 * @brief This function returns the value of member type_
 * @return Value of member type_
 */
uint8_t telemetry_status::type_() const
{
    return m_type_;
}

/*!
 * @brief This function returns a reference to member type_
 * @return Reference to member type_
 */
uint8_t& telemetry_status::type_()
{
    return m_type_;
}

/*!
 * @brief This function sets a value in member mode_
 * @param _mode_ New value for member mode_
 */
void telemetry_status::mode_(uint8_t _mode_)
{
m_mode_ = _mode_;
}

/*!
 * @brief This function returns the value of member mode_
 * @return Value of member mode_
 */
uint8_t telemetry_status::mode_() const
{
    return m_mode_;
}

/*!
 * @brief This function returns a reference to member mode_
 * @return Reference to member mode_
 */
uint8_t& telemetry_status::mode_()
{
    return m_mode_;
}

/*!
 * @brief This function sets a value in member flow_control_
 * @param _flow_control_ New value for member flow_control_
 */
void telemetry_status::flow_control_(bool _flow_control_)
{
m_flow_control_ = _flow_control_;
}

/*!
 * @brief This function returns the value of member flow_control_
 * @return Value of member flow_control_
 */
bool telemetry_status::flow_control_() const
{
    return m_flow_control_;
}

/*!
 * @brief This function returns a reference to member flow_control_
 * @return Reference to member flow_control_
 */
bool& telemetry_status::flow_control_()
{
    return m_flow_control_;
}

/*!
 * @brief This function sets a value in member forwarding_
 * @param _forwarding_ New value for member forwarding_
 */
void telemetry_status::forwarding_(bool _forwarding_)
{
m_forwarding_ = _forwarding_;
}

/*!
 * @brief This function returns the value of member forwarding_
 * @return Value of member forwarding_
 */
bool telemetry_status::forwarding_() const
{
    return m_forwarding_;
}

/*!
 * @brief This function returns a reference to member forwarding_
 * @return Reference to member forwarding_
 */
bool& telemetry_status::forwarding_()
{
    return m_forwarding_;
}

/*!
 * @brief This function sets a value in member mavlink_v2_
 * @param _mavlink_v2_ New value for member mavlink_v2_
 */
void telemetry_status::mavlink_v2_(bool _mavlink_v2_)
{
m_mavlink_v2_ = _mavlink_v2_;
}

/*!
 * @brief This function returns the value of member mavlink_v2_
 * @return Value of member mavlink_v2_
 */
bool telemetry_status::mavlink_v2_() const
{
    return m_mavlink_v2_;
}

/*!
 * @brief This function returns a reference to member mavlink_v2_
 * @return Reference to member mavlink_v2_
 */
bool& telemetry_status::mavlink_v2_()
{
    return m_mavlink_v2_;
}

/*!
 * @brief This function sets a value in member ftp_
 * @param _ftp_ New value for member ftp_
 */
void telemetry_status::ftp_(bool _ftp_)
{
m_ftp_ = _ftp_;
}

/*!
 * @brief This function returns the value of member ftp_
 * @return Value of member ftp_
 */
bool telemetry_status::ftp_() const
{
    return m_ftp_;
}

/*!
 * @brief This function returns a reference to member ftp_
 * @return Reference to member ftp_
 */
bool& telemetry_status::ftp_()
{
    return m_ftp_;
}

/*!
 * @brief This function sets a value in member streams_
 * @param _streams_ New value for member streams_
 */
void telemetry_status::streams_(uint8_t _streams_)
{
m_streams_ = _streams_;
}

/*!
 * @brief This function returns the value of member streams_
 * @return Value of member streams_
 */
uint8_t telemetry_status::streams_() const
{
    return m_streams_;
}

/*!
 * @brief This function returns a reference to member streams_
 * @return Reference to member streams_
 */
uint8_t& telemetry_status::streams_()
{
    return m_streams_;
}

/*!
 * @brief This function sets a value in member data_rate_
 * @param _data_rate_ New value for member data_rate_
 */
void telemetry_status::data_rate_(float _data_rate_)
{
m_data_rate_ = _data_rate_;
}

/*!
 * @brief This function returns the value of member data_rate_
 * @return Value of member data_rate_
 */
float telemetry_status::data_rate_() const
{
    return m_data_rate_;
}

/*!
 * @brief This function returns a reference to member data_rate_
 * @return Reference to member data_rate_
 */
float& telemetry_status::data_rate_()
{
    return m_data_rate_;
}

/*!
 * @brief This function sets a value in member rate_multiplier_
 * @param _rate_multiplier_ New value for member rate_multiplier_
 */
void telemetry_status::rate_multiplier_(float _rate_multiplier_)
{
m_rate_multiplier_ = _rate_multiplier_;
}

/*!
 * @brief This function returns the value of member rate_multiplier_
 * @return Value of member rate_multiplier_
 */
float telemetry_status::rate_multiplier_() const
{
    return m_rate_multiplier_;
}

/*!
 * @brief This function returns a reference to member rate_multiplier_
 * @return Reference to member rate_multiplier_
 */
float& telemetry_status::rate_multiplier_()
{
    return m_rate_multiplier_;
}

/*!
 * @brief This function sets a value in member tx_rate_avg_
 * @param _tx_rate_avg_ New value for member tx_rate_avg_
 */
void telemetry_status::tx_rate_avg_(float _tx_rate_avg_)
{
m_tx_rate_avg_ = _tx_rate_avg_;
}

/*!
 * @brief This function returns the value of member tx_rate_avg_
 * @return Value of member tx_rate_avg_
 */
float telemetry_status::tx_rate_avg_() const
{
    return m_tx_rate_avg_;
}

/*!
 * @brief This function returns a reference to member tx_rate_avg_
 * @return Reference to member tx_rate_avg_
 */
float& telemetry_status::tx_rate_avg_()
{
    return m_tx_rate_avg_;
}

/*!
 * @brief This function sets a value in member tx_error_rate_avg_
 * @param _tx_error_rate_avg_ New value for member tx_error_rate_avg_
 */
void telemetry_status::tx_error_rate_avg_(float _tx_error_rate_avg_)
{
m_tx_error_rate_avg_ = _tx_error_rate_avg_;
}

/*!
 * @brief This function returns the value of member tx_error_rate_avg_
 * @return Value of member tx_error_rate_avg_
 */
float telemetry_status::tx_error_rate_avg_() const
{
    return m_tx_error_rate_avg_;
}

/*!
 * @brief This function returns a reference to member tx_error_rate_avg_
 * @return Reference to member tx_error_rate_avg_
 */
float& telemetry_status::tx_error_rate_avg_()
{
    return m_tx_error_rate_avg_;
}

/*!
 * @brief This function sets a value in member tx_message_count_
 * @param _tx_message_count_ New value for member tx_message_count_
 */
void telemetry_status::tx_message_count_(uint32_t _tx_message_count_)
{
m_tx_message_count_ = _tx_message_count_;
}

/*!
 * @brief This function returns the value of member tx_message_count_
 * @return Value of member tx_message_count_
 */
uint32_t telemetry_status::tx_message_count_() const
{
    return m_tx_message_count_;
}

/*!
 * @brief This function returns a reference to member tx_message_count_
 * @return Reference to member tx_message_count_
 */
uint32_t& telemetry_status::tx_message_count_()
{
    return m_tx_message_count_;
}

/*!
 * @brief This function sets a value in member tx_buffer_overruns_
 * @param _tx_buffer_overruns_ New value for member tx_buffer_overruns_
 */
void telemetry_status::tx_buffer_overruns_(uint32_t _tx_buffer_overruns_)
{
m_tx_buffer_overruns_ = _tx_buffer_overruns_;
}

/*!
 * @brief This function returns the value of member tx_buffer_overruns_
 * @return Value of member tx_buffer_overruns_
 */
uint32_t telemetry_status::tx_buffer_overruns_() const
{
    return m_tx_buffer_overruns_;
}

/*!
 * @brief This function returns a reference to member tx_buffer_overruns_
 * @return Reference to member tx_buffer_overruns_
 */
uint32_t& telemetry_status::tx_buffer_overruns_()
{
    return m_tx_buffer_overruns_;
}

/*!
 * @brief This function sets a value in member rx_rate_avg_
 * @param _rx_rate_avg_ New value for member rx_rate_avg_
 */
void telemetry_status::rx_rate_avg_(float _rx_rate_avg_)
{
m_rx_rate_avg_ = _rx_rate_avg_;
}

/*!
 * @brief This function returns the value of member rx_rate_avg_
 * @return Value of member rx_rate_avg_
 */
float telemetry_status::rx_rate_avg_() const
{
    return m_rx_rate_avg_;
}

/*!
 * @brief This function returns a reference to member rx_rate_avg_
 * @return Reference to member rx_rate_avg_
 */
float& telemetry_status::rx_rate_avg_()
{
    return m_rx_rate_avg_;
}

/*!
 * @brief This function sets a value in member rx_message_count_
 * @param _rx_message_count_ New value for member rx_message_count_
 */
void telemetry_status::rx_message_count_(uint32_t _rx_message_count_)
{
m_rx_message_count_ = _rx_message_count_;
}

/*!
 * @brief This function returns the value of member rx_message_count_
 * @return Value of member rx_message_count_
 */
uint32_t telemetry_status::rx_message_count_() const
{
    return m_rx_message_count_;
}

/*!
 * @brief This function returns a reference to member rx_message_count_
 * @return Reference to member rx_message_count_
 */
uint32_t& telemetry_status::rx_message_count_()
{
    return m_rx_message_count_;
}

/*!
 * @brief This function sets a value in member rx_message_lost_count_
 * @param _rx_message_lost_count_ New value for member rx_message_lost_count_
 */
void telemetry_status::rx_message_lost_count_(uint32_t _rx_message_lost_count_)
{
m_rx_message_lost_count_ = _rx_message_lost_count_;
}

/*!
 * @brief This function returns the value of member rx_message_lost_count_
 * @return Value of member rx_message_lost_count_
 */
uint32_t telemetry_status::rx_message_lost_count_() const
{
    return m_rx_message_lost_count_;
}

/*!
 * @brief This function returns a reference to member rx_message_lost_count_
 * @return Reference to member rx_message_lost_count_
 */
uint32_t& telemetry_status::rx_message_lost_count_()
{
    return m_rx_message_lost_count_;
}

/*!
 * @brief This function sets a value in member rx_buffer_overruns_
 * @param _rx_buffer_overruns_ New value for member rx_buffer_overruns_
 */
void telemetry_status::rx_buffer_overruns_(uint32_t _rx_buffer_overruns_)
{
m_rx_buffer_overruns_ = _rx_buffer_overruns_;
}

/*!
 * @brief This function returns the value of member rx_buffer_overruns_
 * @return Value of member rx_buffer_overruns_
 */
uint32_t telemetry_status::rx_buffer_overruns_() const
{
    return m_rx_buffer_overruns_;
}

/*!
 * @brief This function returns a reference to member rx_buffer_overruns_
 * @return Reference to member rx_buffer_overruns_
 */
uint32_t& telemetry_status::rx_buffer_overruns_()
{
    return m_rx_buffer_overruns_;
}

/*!
 * @brief This function sets a value in member rx_parse_errors_
 * @param _rx_parse_errors_ New value for member rx_parse_errors_
 */
void telemetry_status::rx_parse_errors_(uint32_t _rx_parse_errors_)
{
m_rx_parse_errors_ = _rx_parse_errors_;
}

/*!
 * @brief This function returns the value of member rx_parse_errors_
 * @return Value of member rx_parse_errors_
 */
uint32_t telemetry_status::rx_parse_errors_() const
{
    return m_rx_parse_errors_;
}

/*!
 * @brief This function returns a reference to member rx_parse_errors_
 * @return Reference to member rx_parse_errors_
 */
uint32_t& telemetry_status::rx_parse_errors_()
{
    return m_rx_parse_errors_;
}

/*!
 * @brief This function sets a value in member rx_packet_drop_count_
 * @param _rx_packet_drop_count_ New value for member rx_packet_drop_count_
 */
void telemetry_status::rx_packet_drop_count_(uint32_t _rx_packet_drop_count_)
{
m_rx_packet_drop_count_ = _rx_packet_drop_count_;
}

/*!
 * @brief This function returns the value of member rx_packet_drop_count_
 * @return Value of member rx_packet_drop_count_
 */
uint32_t telemetry_status::rx_packet_drop_count_() const
{
    return m_rx_packet_drop_count_;
}

/*!
 * @brief This function returns a reference to member rx_packet_drop_count_
 * @return Reference to member rx_packet_drop_count_
 */
uint32_t& telemetry_status::rx_packet_drop_count_()
{
    return m_rx_packet_drop_count_;
}

/*!
 * @brief This function sets a value in member rx_message_lost_rate_
 * @param _rx_message_lost_rate_ New value for member rx_message_lost_rate_
 */
void telemetry_status::rx_message_lost_rate_(float _rx_message_lost_rate_)
{
m_rx_message_lost_rate_ = _rx_message_lost_rate_;
}

/*!
 * @brief This function returns the value of member rx_message_lost_rate_
 * @return Value of member rx_message_lost_rate_
 */
float telemetry_status::rx_message_lost_rate_() const
{
    return m_rx_message_lost_rate_;
}

/*!
 * @brief This function returns a reference to member rx_message_lost_rate_
 * @return Reference to member rx_message_lost_rate_
 */
float& telemetry_status::rx_message_lost_rate_()
{
    return m_rx_message_lost_rate_;
}

/*!
 * @brief This function sets a value in member heartbeat_type_antenna_tracker_
 * @param _heartbeat_type_antenna_tracker_ New value for member heartbeat_type_antenna_tracker_
 */
void telemetry_status::heartbeat_type_antenna_tracker_(bool _heartbeat_type_antenna_tracker_)
{
m_heartbeat_type_antenna_tracker_ = _heartbeat_type_antenna_tracker_;
}

/*!
 * @brief This function returns the value of member heartbeat_type_antenna_tracker_
 * @return Value of member heartbeat_type_antenna_tracker_
 */
bool telemetry_status::heartbeat_type_antenna_tracker_() const
{
    return m_heartbeat_type_antenna_tracker_;
}

/*!
 * @brief This function returns a reference to member heartbeat_type_antenna_tracker_
 * @return Reference to member heartbeat_type_antenna_tracker_
 */
bool& telemetry_status::heartbeat_type_antenna_tracker_()
{
    return m_heartbeat_type_antenna_tracker_;
}

/*!
 * @brief This function sets a value in member heartbeat_type_gcs_
 * @param _heartbeat_type_gcs_ New value for member heartbeat_type_gcs_
 */
void telemetry_status::heartbeat_type_gcs_(bool _heartbeat_type_gcs_)
{
m_heartbeat_type_gcs_ = _heartbeat_type_gcs_;
}

/*!
 * @brief This function returns the value of member heartbeat_type_gcs_
 * @return Value of member heartbeat_type_gcs_
 */
bool telemetry_status::heartbeat_type_gcs_() const
{
    return m_heartbeat_type_gcs_;
}

/*!
 * @brief This function returns a reference to member heartbeat_type_gcs_
 * @return Reference to member heartbeat_type_gcs_
 */
bool& telemetry_status::heartbeat_type_gcs_()
{
    return m_heartbeat_type_gcs_;
}

/*!
 * @brief This function sets a value in member heartbeat_type_onboard_controller_
 * @param _heartbeat_type_onboard_controller_ New value for member heartbeat_type_onboard_controller_
 */
void telemetry_status::heartbeat_type_onboard_controller_(bool _heartbeat_type_onboard_controller_)
{
m_heartbeat_type_onboard_controller_ = _heartbeat_type_onboard_controller_;
}

/*!
 * @brief This function returns the value of member heartbeat_type_onboard_controller_
 * @return Value of member heartbeat_type_onboard_controller_
 */
bool telemetry_status::heartbeat_type_onboard_controller_() const
{
    return m_heartbeat_type_onboard_controller_;
}

/*!
 * @brief This function returns a reference to member heartbeat_type_onboard_controller_
 * @return Reference to member heartbeat_type_onboard_controller_
 */
bool& telemetry_status::heartbeat_type_onboard_controller_()
{
    return m_heartbeat_type_onboard_controller_;
}

/*!
 * @brief This function sets a value in member heartbeat_type_gimbal_
 * @param _heartbeat_type_gimbal_ New value for member heartbeat_type_gimbal_
 */
void telemetry_status::heartbeat_type_gimbal_(bool _heartbeat_type_gimbal_)
{
m_heartbeat_type_gimbal_ = _heartbeat_type_gimbal_;
}

/*!
 * @brief This function returns the value of member heartbeat_type_gimbal_
 * @return Value of member heartbeat_type_gimbal_
 */
bool telemetry_status::heartbeat_type_gimbal_() const
{
    return m_heartbeat_type_gimbal_;
}

/*!
 * @brief This function returns a reference to member heartbeat_type_gimbal_
 * @return Reference to member heartbeat_type_gimbal_
 */
bool& telemetry_status::heartbeat_type_gimbal_()
{
    return m_heartbeat_type_gimbal_;
}

/*!
 * @brief This function sets a value in member heartbeat_type_adsb_
 * @param _heartbeat_type_adsb_ New value for member heartbeat_type_adsb_
 */
void telemetry_status::heartbeat_type_adsb_(bool _heartbeat_type_adsb_)
{
m_heartbeat_type_adsb_ = _heartbeat_type_adsb_;
}

/*!
 * @brief This function returns the value of member heartbeat_type_adsb_
 * @return Value of member heartbeat_type_adsb_
 */
bool telemetry_status::heartbeat_type_adsb_() const
{
    return m_heartbeat_type_adsb_;
}

/*!
 * @brief This function returns a reference to member heartbeat_type_adsb_
 * @return Reference to member heartbeat_type_adsb_
 */
bool& telemetry_status::heartbeat_type_adsb_()
{
    return m_heartbeat_type_adsb_;
}

/*!
 * @brief This function sets a value in member heartbeat_type_camera_
 * @param _heartbeat_type_camera_ New value for member heartbeat_type_camera_
 */
void telemetry_status::heartbeat_type_camera_(bool _heartbeat_type_camera_)
{
m_heartbeat_type_camera_ = _heartbeat_type_camera_;
}

/*!
 * @brief This function returns the value of member heartbeat_type_camera_
 * @return Value of member heartbeat_type_camera_
 */
bool telemetry_status::heartbeat_type_camera_() const
{
    return m_heartbeat_type_camera_;
}

/*!
 * @brief This function returns a reference to member heartbeat_type_camera_
 * @return Reference to member heartbeat_type_camera_
 */
bool& telemetry_status::heartbeat_type_camera_()
{
    return m_heartbeat_type_camera_;
}

/*!
 * @brief This function sets a value in member heartbeat_component_telemetry_radio_
 * @param _heartbeat_component_telemetry_radio_ New value for member heartbeat_component_telemetry_radio_
 */
void telemetry_status::heartbeat_component_telemetry_radio_(bool _heartbeat_component_telemetry_radio_)
{
m_heartbeat_component_telemetry_radio_ = _heartbeat_component_telemetry_radio_;
}

/*!
 * @brief This function returns the value of member heartbeat_component_telemetry_radio_
 * @return Value of member heartbeat_component_telemetry_radio_
 */
bool telemetry_status::heartbeat_component_telemetry_radio_() const
{
    return m_heartbeat_component_telemetry_radio_;
}

/*!
 * @brief This function returns a reference to member heartbeat_component_telemetry_radio_
 * @return Reference to member heartbeat_component_telemetry_radio_
 */
bool& telemetry_status::heartbeat_component_telemetry_radio_()
{
    return m_heartbeat_component_telemetry_radio_;
}

/*!
 * @brief This function sets a value in member heartbeat_component_log_
 * @param _heartbeat_component_log_ New value for member heartbeat_component_log_
 */
void telemetry_status::heartbeat_component_log_(bool _heartbeat_component_log_)
{
m_heartbeat_component_log_ = _heartbeat_component_log_;
}

/*!
 * @brief This function returns the value of member heartbeat_component_log_
 * @return Value of member heartbeat_component_log_
 */
bool telemetry_status::heartbeat_component_log_() const
{
    return m_heartbeat_component_log_;
}

/*!
 * @brief This function returns a reference to member heartbeat_component_log_
 * @return Reference to member heartbeat_component_log_
 */
bool& telemetry_status::heartbeat_component_log_()
{
    return m_heartbeat_component_log_;
}

/*!
 * @brief This function sets a value in member heartbeat_component_osd_
 * @param _heartbeat_component_osd_ New value for member heartbeat_component_osd_
 */
void telemetry_status::heartbeat_component_osd_(bool _heartbeat_component_osd_)
{
m_heartbeat_component_osd_ = _heartbeat_component_osd_;
}

/*!
 * @brief This function returns the value of member heartbeat_component_osd_
 * @return Value of member heartbeat_component_osd_
 */
bool telemetry_status::heartbeat_component_osd_() const
{
    return m_heartbeat_component_osd_;
}

/*!
 * @brief This function returns a reference to member heartbeat_component_osd_
 * @return Reference to member heartbeat_component_osd_
 */
bool& telemetry_status::heartbeat_component_osd_()
{
    return m_heartbeat_component_osd_;
}

/*!
 * @brief This function sets a value in member heartbeat_component_obstacle_avoidance_
 * @param _heartbeat_component_obstacle_avoidance_ New value for member heartbeat_component_obstacle_avoidance_
 */
void telemetry_status::heartbeat_component_obstacle_avoidance_(bool _heartbeat_component_obstacle_avoidance_)
{
m_heartbeat_component_obstacle_avoidance_ = _heartbeat_component_obstacle_avoidance_;
}

/*!
 * @brief This function returns the value of member heartbeat_component_obstacle_avoidance_
 * @return Value of member heartbeat_component_obstacle_avoidance_
 */
bool telemetry_status::heartbeat_component_obstacle_avoidance_() const
{
    return m_heartbeat_component_obstacle_avoidance_;
}

/*!
 * @brief This function returns a reference to member heartbeat_component_obstacle_avoidance_
 * @return Reference to member heartbeat_component_obstacle_avoidance_
 */
bool& telemetry_status::heartbeat_component_obstacle_avoidance_()
{
    return m_heartbeat_component_obstacle_avoidance_;
}

/*!
 * @brief This function sets a value in member heartbeat_component_vio_
 * @param _heartbeat_component_vio_ New value for member heartbeat_component_vio_
 */
void telemetry_status::heartbeat_component_vio_(bool _heartbeat_component_vio_)
{
m_heartbeat_component_vio_ = _heartbeat_component_vio_;
}

/*!
 * @brief This function returns the value of member heartbeat_component_vio_
 * @return Value of member heartbeat_component_vio_
 */
bool telemetry_status::heartbeat_component_vio_() const
{
    return m_heartbeat_component_vio_;
}

/*!
 * @brief This function returns a reference to member heartbeat_component_vio_
 * @return Reference to member heartbeat_component_vio_
 */
bool& telemetry_status::heartbeat_component_vio_()
{
    return m_heartbeat_component_vio_;
}

/*!
 * @brief This function sets a value in member heartbeat_component_pairing_manager_
 * @param _heartbeat_component_pairing_manager_ New value for member heartbeat_component_pairing_manager_
 */
void telemetry_status::heartbeat_component_pairing_manager_(bool _heartbeat_component_pairing_manager_)
{
m_heartbeat_component_pairing_manager_ = _heartbeat_component_pairing_manager_;
}

/*!
 * @brief This function returns the value of member heartbeat_component_pairing_manager_
 * @return Value of member heartbeat_component_pairing_manager_
 */
bool telemetry_status::heartbeat_component_pairing_manager_() const
{
    return m_heartbeat_component_pairing_manager_;
}

/*!
 * @brief This function returns a reference to member heartbeat_component_pairing_manager_
 * @return Reference to member heartbeat_component_pairing_manager_
 */
bool& telemetry_status::heartbeat_component_pairing_manager_()
{
    return m_heartbeat_component_pairing_manager_;
}

/*!
 * @brief This function sets a value in member heartbeat_component_udp_bridge_
 * @param _heartbeat_component_udp_bridge_ New value for member heartbeat_component_udp_bridge_
 */
void telemetry_status::heartbeat_component_udp_bridge_(bool _heartbeat_component_udp_bridge_)
{
m_heartbeat_component_udp_bridge_ = _heartbeat_component_udp_bridge_;
}

/*!
 * @brief This function returns the value of member heartbeat_component_udp_bridge_
 * @return Value of member heartbeat_component_udp_bridge_
 */
bool telemetry_status::heartbeat_component_udp_bridge_() const
{
    return m_heartbeat_component_udp_bridge_;
}

/*!
 * @brief This function returns a reference to member heartbeat_component_udp_bridge_
 * @return Reference to member heartbeat_component_udp_bridge_
 */
bool& telemetry_status::heartbeat_component_udp_bridge_()
{
    return m_heartbeat_component_udp_bridge_;
}

/*!
 * @brief This function sets a value in member heartbeat_component_uart_bridge_
 * @param _heartbeat_component_uart_bridge_ New value for member heartbeat_component_uart_bridge_
 */
void telemetry_status::heartbeat_component_uart_bridge_(bool _heartbeat_component_uart_bridge_)
{
m_heartbeat_component_uart_bridge_ = _heartbeat_component_uart_bridge_;
}

/*!
 * @brief This function returns the value of member heartbeat_component_uart_bridge_
 * @return Value of member heartbeat_component_uart_bridge_
 */
bool telemetry_status::heartbeat_component_uart_bridge_() const
{
    return m_heartbeat_component_uart_bridge_;
}

/*!
 * @brief This function returns a reference to member heartbeat_component_uart_bridge_
 * @return Reference to member heartbeat_component_uart_bridge_
 */
bool& telemetry_status::heartbeat_component_uart_bridge_()
{
    return m_heartbeat_component_uart_bridge_;
}

/*!
 * @brief This function sets a value in member avoidance_system_healthy_
 * @param _avoidance_system_healthy_ New value for member avoidance_system_healthy_
 */
void telemetry_status::avoidance_system_healthy_(bool _avoidance_system_healthy_)
{
m_avoidance_system_healthy_ = _avoidance_system_healthy_;
}

/*!
 * @brief This function returns the value of member avoidance_system_healthy_
 * @return Value of member avoidance_system_healthy_
 */
bool telemetry_status::avoidance_system_healthy_() const
{
    return m_avoidance_system_healthy_;
}

/*!
 * @brief This function returns a reference to member avoidance_system_healthy_
 * @return Reference to member avoidance_system_healthy_
 */
bool& telemetry_status::avoidance_system_healthy_()
{
    return m_avoidance_system_healthy_;
}


size_t telemetry_status::getKeyMaxCdrSerializedSize(size_t current_alignment)
{
    size_t current_align = current_alignment;







































    return current_align;
}

bool telemetry_status::isKeyDefined()
{
   return false;
}

void telemetry_status::serializeKey(eprosima::fastcdr::Cdr &scdr) const
{
    (void) scdr;
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
}
